A system can include various types of storage devices, including a persistent secondary storage (e.g. disk-based storage or solid state storage) and an intermediate storage. The intermediate storage can be implemented with a higher-speed storage device than used in the persistent secondary storage. Examples of storage devices that can be used in the intermediate storage include dynamic random access memories (DRAMs), static random access memories (SRAMs), flash memories, and so forth.
The intermediate storage can be used to cache a portion of the data that is in the persistent secondary storage. Some of the cached data may be updated during operation of the system, which can cause the updated data in the intermediate storage to be more up-to-date than the corresponding data in the persistent secondary storage. Updated data in the intermediate storage may be subject to loss in case of a fault in the system.